package com.example.xposedtest.utils;

import android.os.Environment;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.Properties;

//
public class StepConfigUtils {
    // 配置文件路径（外部存储，无需上下文）
    private static final String CONFIG_PATH = Environment.getExternalStorageDirectory()
            + File.separator + "Android"
            + File.separator + "data"
            + File.separator + "com.example.xposedtest"  // 你的应用包名
            + File.separator + "step_config.properties";

    // 保存步数配置
    public static void saveConfig(boolean isEnabled, int stepValue) {
        try {
            File file = new File(CONFIG_PATH);
            // 确保父目录存在
            if (!file.getParentFile().exists()) {
                file.getParentFile().mkdirs();
            }
            Properties prop = new Properties();
            prop.setProperty("step_enabled", String.valueOf(isEnabled));
            prop.setProperty("step_value", String.valueOf(stepValue));
            // 写入文件
            prop.store(new FileOutputStream(file), "Step Config");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    // 读取步数配置（返回数组：[0]是否开启，[1]步数数值）
    public static Object[] loadConfig() {
        try {
            File file = new File(CONFIG_PATH);
            if (!file.exists()) {
                return new Object[]{false, 10000}; // 默认值
            }
            Properties prop = new Properties();
            prop.load(new FileInputStream(file));
            boolean enabled = Boolean.parseBoolean(prop.getProperty("step_enabled", "false"));
            int stepValue = Integer.parseInt(prop.getProperty("step_value", "10000"));
            return new Object[]{enabled, stepValue};
        } catch (Exception e) {
            e.printStackTrace();
            return new Object[]{false, 10000}; // 异常时返回默认值
        }
    }
}